// 引入API和DataTable
// 确保已加载 api.js 和 data-table.js

document.addEventListener('DOMContentLoaded', function() {
    // 初始化图书表格
    initBookTable();
});

// 初始化图书表格
function initBookTable() {
    // 先加载所有分类数据
    axios.get('/categories')
        .then(response => {
            if (response.data.success) {
                const categories = response.data.data;
                
                // 图书表格列定义
                const bookColumns = [
                    { field: 'id', title: '图书ID', readonly: true },
                    { field: 'title', title: '书名' },
                    { field: 'author', title: '作者' },
                    { field: 'publisher', title: '出版社' },
                    { field: 'price', title: '价格', type: 'number' },
                    { field: 'originalPrice', title: '原价', type: 'number' },
                    { field: 'categoryId', title: '分类', type: 'select', 
                      options: categories.map(c => ({ value: c.id, label: c.categoryName })) },
                    { field: 'stock', title: '库存', type: 'number' },
                    { field: 'status', title: '状态', type: 'select', options: [
                        { value: '在售', label: '在售' },
                        { value: 'UNAVAILABLE', label: '下架' }
                    ]},
                    { field: 'description', title: '描述', type: 'textarea' },
                    { field: 'imageUrl', title: '图片', type: 'image' }
                ];
                
                // 初始化图书表格
                const bookTable = new DataTable('goods-content', bookColumns, BookAPI);
            } else {
                console.error('加载分类数据失败:', response.data.message);
                // 即使加载失败，也初始化表格，但分类选项为空
                initTableWithEmptyCategories();
            }
        })
        .catch(error => {
            console.error('加载分类数据出错:', error);
            // 出错时也初始化表格，但分类选项为空
            initTableWithEmptyCategories();
        });
}

// 当无法加载分类数据时，使用空选项初始化表格
function initTableWithEmptyCategories() {
    const bookColumns = [
        { field: 'id', title: '图书ID', readonly: true },
        { field: 'title', title: '书名' },
        { field: 'author', title: '作者' },
        { field: 'publisher', title: '出版社' },
        { field: 'price', title: '价格', type: 'number' },
        { field: 'originalPrice', title: '原价', type: 'number' },
        { field: 'categoryId', title: '分类', type: 'select', options: [] },
        { field: 'stock', title: '库存', type: 'number' },
        { field: 'status', title: '状态', type: 'select', options: [
            { value: '在售', label: '在售' },
            { value: 'UNAVAILABLE', label: '下架' }
        ]},
        { field: 'description', title: '描述', type: 'textarea' },
        { field: 'imageUrl', title: '图片', type: 'image' }
    ];
    
    const bookTable = new DataTable('goods-content', bookColumns, BookAPI);
}